From 3d6a76a866ad9914e7cdd4b4868f002417686d96 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sat, 7 Jan 2012 05:35:50 +0100 Subject: [PATCH] tests: Add a test for all the border shorthands Too much fun with random test generation, so I did a big one. --- tests/css/parser/Makefile.am | 2 + tests/css/parser/border-shorthand.css | 345 ++++++++++ tests/css/parser/border-shorthand.ref.css | 771 ++++++++++++++++++++++ 3 files changed, 1118 insertions(+) create mode 100644 tests/css/parser/border-shorthand.css create mode 100644 tests/css/parser/border-shorthand.ref.css diff --git a/tests/css/parser/Makefile.am b/tests/css/parser/Makefile.am index fbb8ae2027..4a25205a3c 100644 --- a/tests/css/parser/Makefile.am +++ b/tests/css/parser/Makefile.am @@ -162,6 +162,8 @@ EXTRA_DIST += \ border-radius.css \ border-radius.errors \ border-radius.ref.css \ + border-shorthand.css \ + border-shorthand.ref.css \ close-at-end-of-file.css \ close-at-end-of-file.errors \ close-at-end-of-file.ref.css \ diff --git a/tests/css/parser/border-shorthand.css b/tests/css/parser/border-shorthand.css new file mode 100644 index 0000000000..bcd08bbfff --- /dev/null +++ b/tests/css/parser/border-shorthand.css @@ -0,0 +1,345 @@ +a { + border-right: solid 3px pink; +} + +b { + border-bottom: solid 3px; +} + +c { + border-right: solid pink 3px; + border-bottom: solid pink; +} + +d { + border-bottom: solid; + border: 3px solid pink; +} + +e { + border-top: 3px solid; +} + +f { + border-right: 3px pink solid; + border-bottom: 3px pink; + border-top: 3px; + border: pink solid 3px; + border-bottom: pink solid; + border-right: pink 3px solid; + border: pink 3px; +} + +g { + border-bottom: pink; +} + +h { + border-top: solid 3px pink; +} + +i { + border-bottom: solid 3px; + border-right: solid pink 3px; + border-right: solid pink; +} + +j { + border-bottom: solid; +} + +k { + border-bottom: 3px solid pink; +} + +l { + border: 3px solid; +} + +m { + border-left: 3px pink solid; + border-bottom: 3px pink; + border-top: 3px; + border-top: pink solid 3px; + border-bottom: pink solid; +} + +n { + border: pink 3px solid; +} + +o { + border-top: pink 3px; + border-top: pink; +} +p { + border-bottom: solid 3px pink; + border-right: solid 3px; +} + +q { + border: solid pink 3px; +} + +r { + border-left: solid pink; + border-bottom: solid; + border-left: 3px solid pink; + border-right: 3px solid; +} + +s { + border-top: 3px pink solid; + border: 3px pink; +} + +t { + border-left: 3px; + border-right: pink solid 3px; + border: pink solid; +} + +u { + border-bottom: pink 3px solid; +} + +v { + border-top: pink 3px; +} + +w { + border-top: pink; +} +x { + border-top: solid 3px pink; +} + +y { + border-right: solid 3px; + border-bottom: solid pink 3px; +} + +z { + border-left: solid pink; +} + +ab { + border-right: solid; + border-top: 3px solid pink; +} + +bb { + border-bottom: 3px solid; +} + +cb { + border-left: 3px pink solid; +} + +db { + border-bottom: 3px pink; +} + +eb { + border-left: 3px; +} + +fb { + border-right: pink solid 3px; + border-top: pink solid; +} + +gb { + border-top: pink 3px solid; + border-right: pink 3px; +} + +hb { + border-left: pink; +} + +ib { + border-right: solid 3px pink; + border-bottom: solid 3px; +} + +jb { + border-bottom: solid pink 3px; +} + +kb { + border-left: solid pink; + border: solid; + border-top: 3px solid pink; +} + +lb { + border-top: 3px solid; + border-top: 3px pink solid; +} + +mb { + border-right: 3px pink; +} + +nb { + border-top: 3px; +} + +ob { + border-top: pink solid 3px; + border-bottom: pink solid; + border-left: pink 3px solid; +} + +pb { + border-bottom: pink 3px; + border-top: pink; +} + +qb { + border: solid 3px pink; + border-left: solid 3px; +} + +rb { + border-right: solid pink 3px; +} + +sb { + border-right: solid pink; +} + +tb { + border-top: solid; +} + +ub { + border: 3px solid pink; +} + +vb { + border-right: 3px solid; +} + +wb { + border: 3px pink solid; +} + +xb { + border: 3px pink; + border-right: 3px; + border-bottom: pink solid 3px; +} + +yb { + border-bottom: pink solid; +} + +zb { + border-left: pink 3px solid; + border-bottom: pink 3px; +} + +ac { + border: pink; +} + +bc { + border: solid 3px pink; + border-top: solid 3px; +} + +cc { + border-top: solid pink 3px; + border-left: solid pink; + border-left: solid; + border-left: 3px solid pink; + border: 3px solid; +} + +dc { + border-left: 3px pink solid; +} + +ec { + border-left: 3px pink; + border-top: 3px; + border-bottom: pink solid 3px; + border-bottom: pink solid; + border-left: pink 3px solid; +} + +fc { + border-bottom: pink 3px; +} + +gc { + border-top: pink; +} + +hc { + border-bottom: solid 3px pink; +} + +ic { + border-bottom: solid 3px; +} + +jc { + border-right: solid pink 3px; + border-right: solid pink; + border-top: solid; + border: 3px solid pink; + border-bottom: 3px solid; +} + +kc { + border-bottom: 3px pink solid; + border-left: 3px pink; +} + +lc { + border: 3px; + border-right: pink solid 3px; +} + +mc { + border-bottom: pink solid; + border-top: pink 3px solid; +} + +nc { + border: pink 3px; + border-right: pink; +} +oc { + border-top: solid 3px pink; + border-bottom: solid 3px; + border-left: solid pink 3px; + border: solid pink; + border-bottom: solid; + border-bottom: 3px solid pink; + border-top: 3px solid; + border-left: 3px pink solid; +} + +pc { + border: 3px pink; + border-top: 3px; +} + +qc { + border-right: pink solid 3px; + border: pink solid; + border-right: pink 3px solid; +} + +rc { + border: pink 3px; +} + +sc { + border-bottom: pink; +} + diff --git a/tests/css/parser/border-shorthand.ref.css b/tests/css/parser/border-shorthand.ref.css new file mode 100644 index 0000000000..a37d11a3a7 --- /dev/null +++ b/tests/css/parser/border-shorthand.ref.css @@ -0,0 +1,771 @@ +a { + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; +} + +b { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; +} + +c { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; +} + +d { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +e { + border-top-color: initial; + border-top-style: solid; + border-top-width: 3; +} + +f { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: 3; +} + +g { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: initial; +} + +h { + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +i { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: initial; +} + +j { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: initial; +} + +k { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; +} + +l { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: initial; + border-left-style: solid; + border-left-width: 3; + border-right-color: initial; + border-right-style: solid; + border-right-width: 3; + border-top-color: initial; + border-top-style: solid; + border-top-width: 3; +} + +m { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +n { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +o { + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: initial; +} + +p { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-right-color: initial; + border-right-style: solid; + border-right-width: 3; +} + +q { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +r { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: initial; + border-right-style: solid; + border-right-width: 3; +} + +s { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: 3; +} + +t { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: initial; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: initial; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: initial; +} + +u { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; +} + +v { + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: 3; +} + +w { + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: initial; +} + +x { + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +y { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-right-color: initial; + border-right-style: solid; + border-right-width: 3; +} + +z { + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: initial; +} + +ab { + border-right-color: initial; + border-right-style: solid; + border-right-width: initial; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +bb { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; +} + +cb { + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; +} + +db { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; +} + +eb { + border-left-color: initial; + border-left-style: initial; + border-left-width: 3; +} + +fb { + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: initial; +} + +gb { + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +hb { + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: initial; +} + +ib { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; +} + +jb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; +} + +kb { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: initial; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: initial; + border-left-style: solid; + border-left-width: initial; + border-right-color: initial; + border-right-style: solid; + border-right-width: initial; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +lb { + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +mb { + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: 3; +} + +nb { + border-top-color: initial; + border-top-style: initial; + border-top-width: 3; +} + +ob { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +pb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: initial; +} + +qb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: initial; + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +rb { + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; +} + +sb { + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: initial; +} + +tb { + border-top-color: initial; + border-top-style: solid; + border-top-width: initial; +} + +ub { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +vb { + border-right-color: initial; + border-right-style: solid; + border-right-width: 3; +} + +wb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +xb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; + border-right-color: initial; + border-right-style: initial; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: 3; +} + +yb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; +} + +zb { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; +} + +ac { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: initial; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: initial; + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: initial; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: initial; +} + +bc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: initial; + border-top-style: solid; + border-top-width: 3; +} + +cc { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: initial; + border-left-style: solid; + border-left-width: 3; + border-right-color: initial; + border-right-style: solid; + border-right-width: 3; + border-top-color: initial; + border-top-style: solid; + border-top-width: 3; +} + +dc { + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; +} + +ec { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-top-color: initial; + border-top-style: initial; + border-top-width: 3; +} + +fc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; +} + +gc { + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: initial; +} + +hc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; +} + +ic { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; +} + +jc { + border-bottom-color: initial; + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +kc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; +} + +lc { + border-bottom-color: initial; + border-bottom-style: initial; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: initial; + border-left-style: initial; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: initial; + border-top-style: initial; + border-top-width: 3; +} + +mc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: 3; +} + +nc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: initial; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: 3; +} + +oc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: initial; + border-top-color: initial; + border-top-style: solid; + border-top-width: 3; +} + +pc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: 3; + border-top-color: initial; + border-top-style: initial; + border-top-width: 3; +} + +qc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: solid; + border-bottom-width: initial; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: solid; + border-left-width: initial; + border-right-color: rgb(255,192,203); + border-right-style: solid; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: solid; + border-top-width: initial; +} + +rc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: 3; + border-image-repeat: initial; + border-image-slice: initial; + border-image-source: initial; + border-image-width: initial; + border-left-color: rgb(255,192,203); + border-left-style: initial; + border-left-width: 3; + border-right-color: rgb(255,192,203); + border-right-style: initial; + border-right-width: 3; + border-top-color: rgb(255,192,203); + border-top-style: initial; + border-top-width: 3; +} + +sc { + border-bottom-color: rgb(255,192,203); + border-bottom-style: initial; + border-bottom-width: initial; +} -- 2.30.2